<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>知识点</title>
</head>
<body>
	<script type="text/javascript">
		// 1、require.context()方法
		/*
			webpack 的一个 API，通过执行 require.context() 方法获取一个特定的上下文
			主要用来实现自动化导入模块，如果遇到一个文件夹引入很多模块的情况下，可以使用这个API
			它会遍历文件夹中的指定文件，然后自动导入，使得不需要每次都显示得使用 import 导入模块

			在vue项目中，我们把路由通过不同的功能划分为不同的模块，在index.js中一个个导入，这里可以使用 
			require.context() 方法，将modules文件夹中的所有文件一次性导入到 index.js 中
		*/
		// 2、require.context(directory,useSubdirectories,regExp) 用法
		/*
			directory: string 类型，读取文件的路径
			useSubdirectories： boolean 类型，是否遍历文件的子目录
			regExp: 匹配文件的正则表达式

			require.context('./test', false, /.test.js$/);

			上边的代码意思是遍历当前目录下的 test 文件夹的所有.test.js结尾的文件，不遍历子目录

			执行 require.context()函数时，返回的结果也是一个函数，并且这个函数有三个属性
			1.resolve(request): Function类型，接收一个参数 request,request 作为 test 文件夹下面匹配文件的相对路径,
			返回匹配文件相对于整个工程的相对路径

			2.key()： Function类型，返回匹配成功的模块的名字组成的数组

			3.id: String类型，执行环境的 id,

			const fileObj. = require.context('./test', false, /.test.js$/)
			fileObj.resolve()
			fileObj.keys()
		*/
	</script>
</body>
</html>